Dynamic bandwidth allocation within a communications channel

ABSTRACT

A communications device is presented that allows dynamic bandwidth allocation of an unswitched data path based upon the current utilization of one or more switched data channels. The device operates over the local loop of a digital communications carrier, such as a T1 line, that has a variety of time division multiplexed channels. Each data channel can be configured to operate as a channel dedicated to carrying unswitched data on the unswitched data path, or as a switched channel. Switched channels maintain status information about their current status, allowing switched data communication when the channel&#39;s status is active, and permitting the unswitched data path to utilize the channel when the channel&#39;s status is idle. In one embodiment, channel status information is passed to a remote unit by altering a redundant robbed-bit signaling bit in a multiframe. In a second embodiment, channel status is determined by monitoring switching information that is already transmitted about the channel. In the second embodiment, a preset time delay is required to properly synchronize bandwidth switching. Unswitched data is transmitted over the switched data channels utilizing all bit locations other than the locations taken by the four robbed-bit signaling bits. A method for dynamically reallocating the bandwidth of an unswitched data path utilizing these same techniques is also presented.

FIELD OF THE INVENTION

The present invention relates generally to multiplex communicationssystems, and more particularly to the field of bandwidth allocation insuch a system. Specifically, this invention addresses dynamic allocationof bandwidth in the local loop environment.

BACKGROUND OF THE INVENTION

In the 1950s, telecommunications companies began to develop highbandwidth digital communications technologies in order to allow morephone calls to be simultaneously transmitted over copper wire. The firstdigital transmission carrier, called T1, was developed by AT&T in 1956and is still in use today. A T1 line is capable of transmitting 1.544Megabits per second (Mbps). Originally utilized to connect telephonecentral offices, in the early 1980s T1 lines began to be utilized in thelocal loop.

The local loop is often thought of as the connection between a localtelecommunications office and an end-user. The "end-user" could be anactual customer of telephone service, a bandwidth reseller such as anInternet service provider, or even a site maintained for the convenienceof a telecommunications company. Although the local loop is commonlyreferred to as the "last mile," local loop lengths in the United Statesare more typically about 2.5 miles, and some local loop implementationshaving a maximum range of almost 50,000 feet.

Digital transmission carriers such as T1 are usually "channelized" intomultiple channels using Time Division Multiplex (TDM) technology. TDMchannels are created by a multiplexer that divides a digital carrierinto separate, individual time segments. Each time segment is allocatedfor the exclusive use of a single channel. The standard T1 line isdivided in this manner into 24 separate channels. Each channel transmits8 bits of digital data before the next channel begins transmitting.Since every channel sends 8 bits down the T1 line in turn, a series of192 bits (8 bits times 24 channels) is created before the process canrepeat. Before each series of bits, the multiplexer adds an additionalbit called the framing bit. Thus, data on a T1 line is sent in 193 bitlong "frames." These frames are transmitted about 8,000 times persecond.

Each channel in a T1 line is called a DS-0 channel. Similarly, the totalT1 line is often referred to as a DS-1 line. Thus, there are 24 DS-0channels in a DS-1 line. Each DS-0 channel transmits at 64 k bps. Thistransmission speed is the ideal bandwidth for voice communication, sincevoice communication is generally sampled and digitally converted into 8bit words 8,000 times per second. In addition to serving voicecommunication, these DS-0 channels are commonly used for digital datacommunication.

The individual DS-0 channels can be operated in either a "switched" or"dedicated" fashion. Switched data channels allow the communication onthe channel to be switched on and off. Voice communication is an exampleof switched data, in that there are times when the voice channel isactive or "off-hook," and other times when a voice channel is inactiveor "on-hook." Data communication can also operate in a switched fashion,sometimes actively communicating data and other times being inactive.

In order for a switched data channel to be switched on and off, it isnecessary to signal the current status of the communication. In a voicechannel, for example, it is necessary to indicate when a telephonereceiver is picked up to place a phone call (signaled by an off-hookstatus indication), and to indicate when a local line should startringing.

In contrast, a dedicated communication channel does not transmit statusinformation and is always active. Although a dedicated channel may onlybe transmitting useful information at specific times, it does not everbecome inactive.

Another important aspect of channelized digital transmission carriers isthe possibility of combining multiple channels to obtain a higherbandwidth digital data path. For instance, three DS-0 channels can becombined into a single 192 k bps data communications path. Techniquesfor combining separate channels into a single, higher bandwidth digitalcommunications path are well-known in the prior art.

It is common to have switched and unswitched data appearingsimultaneously on the same channelized communication link. For example,a T1 to an office could be utilized to carry both voice communicationsover switched data channels and computer communications with theInternet over dedicated data channels. Traditionally, some DS-0 channelsin the T1 line would be dedicated to carrying the switched, voicecommunications, while other DS-0 channels would carry the unswitcheddata communications.

Unfortunately, this fixed allocation of bandwidth on a local loop T1line wastes bandwidth, since the switched DS-0 channels carry no datawhen they are idle. A better approach is to dynamically allocate thebandwidth on an as-needed basis. With dynamic bandwidth allocation, theinactive voice channels can be utilized to handle unswitched datacommunications when no voice calls are active, and yet would beavailable for voice communications when a signal to make the voicechannel active is received.

The basic idea of allowing the same data channels to be used for bothswitched and unswitched communication is not new. One approach to doingso is implemented through Asynchronous Transfer Mode (ATM) technology.This technology is able to successfully provide and manage bandwidth forvoice, video, and data applications. To accomplish this task, ATMutilizes "cell relay" techniques instead of relying on data channelscreated by time division multiplexing. In cell relay, eachcommunications task, whether data, voice, or video, is divided intofixed size packets, or "cells," that contain a small amount of data andheader information to direct the cell. Each cell is then transmittedwith all other cells across the same communications path, and isdirected toward its destination by the header information. Once thecells arrive at their destination, the communication is thenreconstructed. While ATM may be the best solution for large-scalebandwidth-management problems, it is overly complex, too resourceintensive, and too expensive for handling variable bandwidth assignmentson the local loop.

A better approach is to keep the DS-0 channels created via time divisionmultiplexing, and instead develop simpler techniques of dynamicbandwidth allocation. Unfortunately, the currently known prior artmethods utilizing this approach fail to provide bandwidth allocation ina simple yet effective manner.

For instance, in U.S. Pat. No. 4,763,321 issued to Rozenblit andassigned to Bell Communications Research, Inc., a method for handlingvariable bandwidth allocation by changing the allocation of DS-0channels is presented. This invention relates to Distributed BurstSwitching Systems (DBSS), a system that uses virtual circuits in themanner of ATM, X.25 and Frame Relay. However, DBSS passes the framescontaining the data through standard DS-0 channels. In standard DBSS, novirtual circuit can utilize more than one DS-0 channel, hence limitingtransmission speeds on a virtual circuit to no more than 64 k bps. TheRozenblit invention allows a single virtual circuit to utilize more thanone DS-0 channel. To accomplish this, no packets are transmitted betweentwo nodes in a link until a 32 bit header is passed to the next nodeidentifying the virtual circuit and specifying the number of DS-0channels to be utilized for the virtual circuit. When a transmissionbetween two nodes is completed, the transmitting node sends a 32-bitflag concluding the communication. When the ending flag is received, theDS-0 channels that had been utilized for the communication are freed upfor use in another transmission. Unfortunately, the Rozenblit inventionsuffers from the same basic problems as the ATM technique, in that itimposes needless complexity and overhead on the relativelystraight-forward situation of dynamic bandwidth allocation on the localloop.

Another bandwidth allocation scheme is revealed in U.S. Pat. No.4,383,315, issued to Torng and assigned to Bell Telephone Laboratories.This invention is intended for use in a loop transmission system, wheremultiple nodes communicate by passing transmissions on to the next nodein the loop. This approach modifies the content of the communicationlink to indicate the state of a channel. A key aspect in this inventionis the process of deciding when to seize an idle time slot, given thatother nodes present in the loop may also wish to use the time slot.Unfortunately, this application has little direct application to theallocation of bandwidth on the local loop. Unlike a loop transmissionsystem, a local loop has only two nodes, and communicates over standardDS-0 channels. In addition, the Torng invention suffers in that itutilizes a type of collision detection, in which data messages can beoverwritten before receipt by the intended node, and overcomes thisproblem by incorporating statistically based delays into thetransmission of data. These delays prevent full utilization of availablebandwidth, and are unnecessary in the local loop environment.

A third prior art approach to dynamic bandwidth allocation could be usedon the local loop. In U.S. Pat. No. 5,467,344, issued to Solomon andassigned to Ascom Timeplex Trading AG, a system is disclosedspecifically for changing bandwidth allocation across a T1 transmissionline. In this disclosure, a method is described for using "pad" codes tofill data channels in transition. When a DS-0 channel on the T1 line isto be reallocated, these pad characters fill the soon-to-be reallocatedDS-0 channel while a separate reconfiguration message is sent andconfirmed on a different channel. Once the reallocation message isconfirmed by the remote node, the reallocated DS-0 channel begins tocarry live data. This method is used to avoid having to synchronize theswitching of the bandwidth at each end of the link. As a result, thismethod is useful in long-haul environments where frame order andmultiframing may be lost. A disadvantage to this approach is thatspecial hardware is required that can eliminate the pad codes and encodeand decode data to avoid spurious pad codes that might otherwise appearin a data stream. These disadvantages occur because the Solomontechnique is not narrowly suited to the local loop environment, butinstead is generally applicable to remote communication over channelizeddigital lines. This results in needless complexity, cost, and bandwidthoverhead.

A final approach in the prior art is the utilization of dedicatedsignaling channels, such as that used with ISDN. In Basic Rate InterfaceISDN, or BRI, two DS-0 channels of 64 k bps bandwidth (referred to as BChannels) are combined with a 16 k bps signaling channel (referred to asthe D Channel). In Primary Rate Interface ISDN, or PRI, twenty-threeDS-0 channels of 64 k bps bandwidth (B Channels) are combined with one64 k bps signaling channel (the D Channel).

ISDN technology can be used to provide dynamic bandwidth allocationbetween switched data and unswitched data on the local loop. By takingadvantage of the dedicated signaling channel, ISDN routers (such as theXpressConnect 5242i available from Gandolph Technologies Inc. of Nepean,Ontario, Canada) can handle dynamic bandwidth allocation. When used withInternet connection protocols such as the PPP Bandwidth AllocationControl Protocol (BACP) and the PPP Multilink specification (RFC 1717),also known as Multiport Protocol (MP), this type of ISDN routerdynamically allocates bandwidth between a single unswitched data path(the PPP Internet connection) and a switched data path (a voice call).When a phone receiver is picked up, the bandwidth allocated to the PPPdata path is reduced by 64 k bps and a DS-0 channel is available for thevoice communication. When the voice call is over, the DS-0 channelpreviously carrying the voice call is reallocated to the PPP data path.

The primary disadvantage of ISDN variable bandwidth allocation on thelocal loop is that the D channel must be dedicated to handlingsignaling. Although the D channel can be used separately to handle otherdata tasks, it can not be utilized fully as part of the unswitched datapath or as a switched data path. In addition, expensive ISDN technologyis required to implement this technique. Although ISDN is oftenconsidered to have a bright future, few parties have invested heavily inISDN equipment.

This invention addresses these problems in the prior art by providing asimple, non-intrusive mechanism for dynamically reallocating digitalcommunication channels between switched and unswitched data in the localloop. The invention allows bandwidth assigned to switched channels to bereassigned to expand the bandwidth of an unswitched digital data pathwhen said switched channel is inactive. Whenever a switched channelbecomes active, the bandwidth would be returned to the switched channel.This is accomplished without using the complex procedure of combiningswitched and unswitched data on the same channel through the use ofcells. In addition, the invention does not need to utilize complex andbandwidth intensive reconfiguration messages or padding characters.Instead, the invention is able to utilize the signaling alreadyassociated with a switched data channel to determine the timing ofdynamic bandwidth switching.

SUMMARY OF THE INVENTION

This invention provides a means for reassigning bandwidth from idleswitched data channels to an unswitched digital data path. While theinvention can handle multiple switched data channels, it is designed tomaintain only one variable bandwidth unswitched data path. As a result,the implementation of dynamic bandwidth allocation can be kept simple.The bandwidth of the unswitched data path will dynamically expand toutilize switched data channels whenever such channels go idle.Similarly, the bandwidth of the unswitched data path is decreased when aswitched data channel becomes active.

To accomplish this task, the present invention uses the inherentsignaling built into switched channels to determine when any of saidswitched channels are idle and the channel's bandwidth may bereassigned. This method may be used when signaling is embedded in aswitched channel, such as in the case of "robbed-bit signaling," or whenthe signaling is carried on a dedicated signaling channel. In all cases,the signaling information for the switched channels is carried at alltimes.

A first embodiment of this invention encodes an indication of thecurrent bandwidth allocation for a switched channel directly into thedata stream on that channel. This embodiment takes advantage of the useof multiframing of T1 frames as well as robbed-bit signaling.

Although a single T1 frame is 193 bits in length, in most cases 12 or 24T1 frames are combined to form a single multiframe. Multiframescontaining 24 frames are known as extended superframes, or ESF. In a24-frame ESF, four robbed-bit signaling bits are presented for eachswitched data channel. However, current standards for robbed-bitsignaling only use the first two robbed-bit signaling bits, known as theA and B signal bits. The third and fourth signaling bits, known as the Cand D signal bits, are redundant and are set identically to the A and Bbits.

This first embodiment of the present invention utilizes 24-frameextended superframes, and takes advantage of the redundant C and Dsignal bits. In every ESF sent via this embodiment, the C signal bit isutilized as the channel status signal indicating the status of thechannel for the next ESF. Since a switched data channel can have onlytwo states, use as a switched data channel or use as part of theunswitched data path, the channel status signal needs to be only asingle bit in length. Upon receipt of an ESF frame utilizing thisembodiment of the invention, the C signal bit is reset to equal the Asignal bit before being passed on by the present invention. In this way,communications equipment connected to the present invention will receiveExtended Superframes that appear completely unaltered by the invention.

An additional aspect of this invention is the maximum utilization ofdata on a switched data channel. Most data communicated on a switcheddata channel utilizing robbed-bit signaling is limited to 56 k bps,using only 7 bits in each frame are utilized for data. This is true eventhough the robbed-bit signaling bit appears only in one frame out ofsix. The present invention utilizes all 8 bits for transmitting data inframes that do not contain a robbed-bit signaling bit, thereby improvingthe bandwidth for switched data traffic to 62.67 k bps.

Another aspect of the invention relates to the implementation ofsignaling dynamic bandwidth allocation in the local loop in a devicehaving a plurality of local communication equipment interfaces. In thelocal loop, dynamic bandwidth allocation was not previously availableexcept through the use of a dedicated signaling channel that isunavailable for use as part of the unswitched data path (as in ISDN).This aspect of the invention provides variable bandwidth allocation in anon-ISDN local loop environment.

In a second embodiment of the dynamic bandwidth allocation invention, noalteration is made to the switching signals normally sent over thecommunications channel. When the normal switching signal is sent by thetelecommunications device attached to the invention, the transmittingand receiving devices embodying this second embodiment of the inventionsimply monitor the signal. This signal can either be embedded in thechannel, such as through robbed-bit signaling, or be transmitted througha dedicated signaling channel, such as an ISDN D Channel. At somepre-determined time after monitoring that signal, typically measured inframe or multi-frame intervals, both devices will simultaneouslyreallocate the bandwidth for the data stream being transmitted to theother end.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a representational view of a digital carrier having multiplechannels, some of which form a single unswitched data path.

FIG. 2 is a representational view of the digital carrier of FIG. 1, in asecond state.

FIG. 3 is a chart showing the structure of an extended superframe.

FIG. 4 is a chart showing different details of the extended superframeof FIG. 3.

FIG. 5 is a chart showing the same detail level of the extendedsuperframe of FIG. 4, but for different frames.

FIG. 6 is a block diagram showing the major elements of the presentinvention.

FIG. 7 is a flow chart showing the bit handler routine.

FIG. 8 is a flow chart showing the receive bit routine.

FIG. 9 is a flow chart showing the transmit bit routine.

FIG. 10 is a flow chart showing the update NewTstatus routine.

FIG. 11 is a flow chart showing an alternative embodiment of the receivebit routine.

FIG. 12 is a flow chart showing an alternative embodiment of thetransmit routine.

FIG. 13 is a representational diagram showing one implementation of thepresent invention.

DETAILED DESCRIPTION OF THE INVENTION

Dynamic Bandwidth Allocation

FIGS. 1 and 2 show a representational view of a digital transmissioncarrier 10 comprised of separate channels 12, 14, 16, and 18, with thechannels denoted by figure number 18 comprising a bundle of separatechannels. These figures are representational in nature, in that they aredesigned to show dynamic bandwidth allocation rather than the truenature of a digital transmission carrier. For instance, each of thechannels 12-18 in FIGS. 1 and 2 are shown as separate, physicalentities. However, channels in a digital transmission carrier 10 areactually created by dividing the large bandwidth of carrier 10 intoseparate time slots through time division multiplexing (TDM). Inaddition, the representational digital transmission carrier 10 in FIGS.1 and 2 contains only eleven channels 12-18, as opposed to the 24 DS-0channels typically found on a T1 line. Nonetheless, the FIGS. 1 and 2are useful for showing the process of dynamic bandwidth allocation inthe present invention.

Each of the channels 12-18 in the present invention can be configured tooperate in either a "switched" or "dedicated" fashion. Switchedcommunications allow the flow of data to be turned on and off, such aswhen a voice line goes off-hook or on-hook. Although data communicationscan also operate in a switched fashion, switched data lines willgenerally be described as voice communications in this application.

Channels 18 that operate in a dedicated fashion are not capable ofsignaling the status of communication on the channel. As a result,dedicated channels can not be utilized to carry voice communications (orswitched data communications), and are dedicated to carrying unswitcheddata.

Channels 12-18 each have identical bandwidths. However, several channels18 have been combined to form a single higher bandwidth digital datapath 20 utilized to carry unswitched data. The techniques for combiningchannels 18 into a single data path 20 are well known in the prior art.When channels 18 are combined in this way, the bandwidth of the digitaldata path 20 is equal to the sum of the bandwidth for each of thecombined channels 18. Under the current invention, only one unswitcheddata path 20 is ever present within a carrier 10. As a result, channels12-18 that are configured to operate in a dedicated fashion will alwayscomprise part of the unswitched data path 20.

In FIG. 1, Channels 12, 14, and 16 are carrying switched data such asvoice communications, and are therefore shown as separate from theunswitched data path 20. Since these channels 12, 14, and 16 arecarrying switched data, they must be configured to operate in a switchedfashion.

In FIG. 2, channel 16 has combined with channels 18 to form part of theunswitched data path 20. This occurs in the present invention whenchannel 16 signals that the switched data communication it was carryingin FIG. 1 has terminated. Rather than allowing the bandwidth containedin channel 16 to go unutilized, the present invention begins to utilizechannel 16 to carry unswitched data, thereby effectively increasing thebandwidth of the unswitched data path 20 by the bandwidth of channel 16.If channel 16 were to signal that a new switched data connection wereneeded, the invention would remove channel 16 from the unswitched datapath 20, and would return to the state shown in FIG. 1. The details ofthese processes are explained below.

Channels 12 and 14 could also dynamically be integrated into theunswitched data path 20 in the same manner as shown for channel 16. Inaddition, any channels 18 shown in FIG. 1 as comprising unswitched datapath 20 that are configured for switched operation could signal theinvention that a new switched data path is needed and be removed fromthe bundle forming path 20.

It should be noted that the dedication of channels 18 to carryingunswitched data actually limits the flexibility of the invention, sincethey are not available for carrying switched data. However, the abilityto dedicate channels 18 in this manner is useful in that dedicatedchannels do not need to transmit signal information. Thus, unless thechannel 18 could realistically be needed to carry unswitched data, thededication of the channel 18 would reduce overhead for the invention andincrease bandwidth, as explained below.

T1 Framing

FIG. 3 shows a T1 extended superframe or ESF 40 as utilized in the firstembodiment of this invention. Use of the extended superframe 40 is astandard framing technique for transmitting a 1.544 Mbps T1 (or DS-1 )line.

The ESF 40 contains twenty-four separate frames 42, of which only thefirst six and last two frames 42 are explicitly shown in FIG. 1. Theremaining frames 42 are indicated via the ellipses 43 in FIG. 1. Theindividual frames 42 are labeled in the top row of FIG. 3 by the letterF combined with the frame number.

Each frame 42 contains data for twenty four separate DS-0 channels 44.FIG. 1 explicitly shows only the first five and last two channels 44 foreach frame 42; the remaining channels are indicated in FIG. 1 viaellipses 45. The individual channels 44 are labeled in the left-mostcolumn of FIG. 3 by the letter C combined with the channel number.

Each channel 44 in a frame 42 contains eight bits of data (not shown inFIG. 3). The frames 42 on a T1 line are transmitted eight thousand timesper second, resulting in a bandwidth of 64 k bps for each of thetwenty-four DS-0 channels 44.

In addition to the DS-0 channels 44, each frame 42 also contains asingle frame bit or Fbit 46, which can be used for frame synchronizationand other signaling information. The utilization of the Fbit 46 forsignaling is standard in the prior art, and is not utilized in anyunique manner in the present invention. With the inclusion of the Fbit,each frame 42 contains a total of 193 bits of data (twenty-four channelstimes eight bits per channel plus one Fbit).

Robbed-Bit Signaling

Each of the channels 44 may be configured to operate in either aswitched or dedicated mode. The channels 44 that carry switched dataneed to convey signal information about the current transmission statusof the switched data. Traditionally, this status information is carriedin every sixth frame 42 through the use of robbed-bit signaling.Robbed-bit signaling utilizes the least significant bit in every sixthframe 42 of each switched data channel 44 as a signaling bit.

Referring now to FIGS. 4 and 5, a portion of the ESF frame 40 of FIG. 3is shown in more detail. FIG. 4 shows the bit use of representativechannels C1, C2, and C3 in frames F1 through F12. Similarly, FIG. 5shows the bit use of channels C1, C2, and C3 in frames F13 through F24.

Representative channel C1 is configured as a dedicated, unswitched datachannel. Since no signaling information is required in this type ofdedicated channel, the channel C1 does not contain any robbed-bitsignaling bits. Instead, every bit location in ESF 40 for channel C1contains unswitched data, as is shown in FIGS. 4 and 5 by the letter`x`.

In contrast, channels C2 and C3 have been configured to carry switcheddata and therefore contain the robbed-bit signaling bit. These bits areshown in the least significant bit location (the bottom bit) forchannels C2 and C3 in frames F6, F12, F18, and F24. The signaling bit inframe F6 is usually called the A signal bit, and is designated in FIG. 4with the letter A. Similarly, the bit in frame F12 is the B signal bit,the bit in frame F18 is the C signal bit, and the bit in frame F24 isthe D signal bit.

Although these four bits are available for communicating signalinginformation on every switched channel 44 in ESF 40, currentcommunication protocols use only the first two signal bits, A and B.Signal bits C and D are not utilized, and are traditionally set to equalsignal bits A and B respectively. Consequently, signal bits C and D arereferred to as the redundant signaling bits.

Channel C2 in FIGS. 4 and 5 is shown containing voice data, as indicatedby the letter `v` in the bit locations. Note that the least significantvoice data bit in frames F6, F12, F18, and F24 have been replaced("robbed") by the robbed-bit signaling bits. The loss of the leastsignificant voice data bit in every sixth frame for signalinginformation generally goes unnoticed in voice communications. As aresult, the voice digitizer (not shown in the figures) that assigns thebit values for a data channel can fill every bit assignment on the basisof the analog to digital transformation, and let the signaling bitsimply overwrite the data as needed.

In data communications, however, the systematic corruption of bits isunacceptable. Traditionally, this has meant that switched data channelsthat carry non-voice data utilize only the most significant seven bitsin each frame. This has the unfortunate effect of limiting switched datacommunications to a 56 k bps bandwidth, compared to a 64 k bps bandwidthavailable when all eight bits are used.

The present invention partially overcomes this limitation, as is shownin connection with channel C3. Channel C3 is configured to transmitswitched data, and therefore contains robbed-bit signaling bits A, B, C,and D in frames F6, F12, F18, and F24, respectively. However, channel C3in FIGS. 4 and 5 is shown in a disconnected state (otherwise known as aninactive, idle, or on-hook state). As a result, rather than carryingvoice data, channel C3 is carrying unswitched data as part of thevariable bandwidth unswitched data path (figure number 20 in FIGS. 1 and2). The individual bits that make up the unswitched data on channel C3are shown in the figures by the `x` and the `+` character. For thepurposes of the data stream, there is no difference between bits shownas an `x` and bits shown as a `+`. The difference in the figures is madefor the sole purpose of explaining the functioning and best mode of theinvention.

The `x` bits in channel C3 are found in the seven most significant bits.Traditionally, these are the only data bits that would be sent on aswitched data path, for fear of overwriting valid data with therobbed-bit signaling bits A, B, C, and D. However, given the limited useof the present invention on the local loop, it is possible to place databits in the least significant bit position for the twenty frames in ESF40 that do not carry robbed-bit signaling bits. These data bits arerepresented in channel C3 as `+` characters. By utilizing these bits totransmit data, the bandwidth of channel C3 becomes 62.67 k bps (anaverage of 75/6 bits per frame, times 8000 frames per second).

It is normally inadvisable to utilize these bits when transmitting dataover switched channels across multiple nodes of a telecommunicationsystem. This is because it is possible for frames to be disassembledfrom one multiframe and reassembled into another multiframe duringtransmission across a node. As a result, the frames that containrobbed-bit signaling would change during transmission. However, sincethe present invention is limited to transmission over the local loop,the invention can guarantee that no re-multiframing will take placeduring transmission. As a result, the frames that contain robbed-bitsignaling do not change, and other frames are free to utilize the leastsignificant bit for transmitting data.

It should be noted that channels C2 and C3 could carry switched digitaldata instead of voice data when they are in a connected state (otherwiseknown as an active, busy, or off-hook state). When carrying switcheddigital data, it is possible that the data transmission equipment willtransmit at only 56 k bps, since the switched digital data transmissionwill continue on past the local loop onto multiple nodes of thetelecommunications system. While the current invention does not improvebandwidth in these cases, the ability to utilize switched channels C2and C3 to transmit unswitched data at 62.67 k bps is a significantadvantage over the prior art.

Invention Components

FIG. 6 schematically shows a transmission device 100 of the presentinvention. Device 100 is locally connected to switched data equipment102 through a switched data interface 104. The device 100 is ideallydesigned to support a variety of switched data interfaces 104, includingT1, E1, ISDN PRI, ISDN BRI, POTS FXO, and POTS FXS.

Device 100 is also locally connected to unswitched data equipment 106through an unswitched data interface 108. The unswitched data interface108 utilized by the device 100 can vary widely. For instance, theunswitched data interface 108 could have a 10BaseT connection forconnecting to traditional unswitched data networks (such as IP or IPX).In addition, the preferred embodiment of unswitched data interface 108should be able to connect to Frame Relay and ATM, and have 802.1dBridging, T1 /DDS connections, and allow V.35 Synchronouscommunications. Preferably, the device 100 located at a centraltelephone office would offer an unswitched data interface 108 havingwider capabilities than a device 100 located at a customer's premise.

The device 100 is designed to provide communication between localequipment 102, 106 and a similarly designed remote unit 110.Communication with the remote unit 110 takes place over a channelized,digital transmission carrier 112, such as a T1 or E1 line. Carrier 112is divided into separate channels 114, created by dividing carrier 112through time division multiplexing.

Communications between switched data equipment 102 and carrier 112 arecontrolled within the device 100 by controller 120. Data to betransmitted from the switched data equipment 102 is received bycontroller 120 and sent over carrier 112 via transmitter 122. Oncereceived by the remote unit 110, the switched data is delivered toremote switched data equipment (not shown) connected to the remote unit110. When the remote switched data equipment in turns sends data toswitched data equipment 102, the data is received over carrier 112 bycontroller 120 through a receiver 124, and then is directed bycontroller 120 to switched data equipment 102.

The transmitter 122 and the receiver 124 form part of a carrierinterface 126 that is specially configured to handle traffic overcarrier 112. The device 100 is ideally designed to support a variety ofcarrier interfaces 126, such as T1, E1, HDSL, SDSL, and VDSL.

Similarly, communication between unswitched data equipment 106 andremote unswitched data equipment (not shown) attached to the remote unit110 takes place over carrier 112, transmitter 122, and receiver 124, allunder the control of controller 120.

The controller 120 could consist of a central processing unit and acontrol program stored in program memory. Alternatively, the controller120 could comprise hard wired circuits designed to handle the controllogic set forth below. In the preferred embodiment, the controller 120is comprised of hard-wired logic gates, in order to speed up processingof data transmission and reception.

The controller 120 is in communication with configuration memory 130,which stores the configuration of the channels 114 of carrier 112. Foreach channel 114, the configuration memory 130 will indicate whether thechannel 114 is to operate in a dedicated or a switched mode. As adefault, configuration memory 130 can be set so all channels 114 operatein a switched mode. Local configuration of the configuration memory 130is ideally allowed, as is configuration across a local network or viacarrier 112. Remote configuration of equipment such as device 100 andconfiguration memory 130 is well-known in the prior art, and is possibleutilizing such protocols as SNMP.

Controller 120 is also in communication with channel status memory 132.Channel status memory 132 indicates the transmit status and the receivestatus of each channel 114 configured by configuration memory 130 tooperate in a switched mode. If the transmit status for a channel 114 isactive, then data for transmission on that channel will be received fromswitched data equipment 102. Likewise, if the receive status for achannel 114 is active, data received from receiver 124 for that channel114 will be directed to switched data equipment 102.

In contrast, if the transmit status for a channel 114 is inactive, thendata for transmission on that channel 114 will be received fromunswitched data equipment 106. Data received from receiver 124 forinactive receive status channels 114 will be directed to unswitched dataequipment 106.

It is possible for the transmit status for a channel 114 to be set toactive, and the receive status of the same channel 114 to be set toinactive, or vice versa. This may occur, for instance, when a voice callis first initiated. This situation causes no confusion in the datastream, and actually is advantageous since unswitched data is able totravel along a channel 114 in one direction until the channel 114actually requires switched data to travel in both directions.

The receive and transmit status in channel status memory 132 isirrelevant for channels 114 configured in configuration memory 130 tooperate in dedicated mode. Channels 114 operating in dedicated modealways take data for transmission from unswitched data equipment 106,and will always direct received data to unswitched data equipment 106.

In order to detect a change in status for local switched data equipment102, a local connection monitor 134 in device 100 monitors communicationon switched data equipment interface 104. The monitor 134 determineswhen a change in status occurs for switched data equipment 102, and soinforms controller 120. The monitor 134 is shown physically separatefrom controller 120 in FIG. 6. However, it would be possible toincorporate the monitor 134 into controller 120 either by including thefunctions of the monitor 134 in the control program for controller 120,or by hard-wiring the functions of the monitor 134 into controller 120.

Similarly, channel status signal detector 136 monitors data received byreceiver 124 on channels 114 configured for switched data operation.When the detector 136 determines that there is a change in the statusfor data received on the channel 114, the detector 136 so informs thecontroller 120. As was the case with monitor 134, detector 136 is shownseparate from controller 120 in FIG. 6, but could be incorporated intothe controller 120 without changing the scope of this invention.

Robbed-Bit Signaling Embodiment

The components for implementing the invention are set forth above inconnection with FIG. 6. One embodiment using these components utilizesrobbed-bit signaling.

In the robbed-bit signaling embodiment, transmission over channels 114configured for dedicated unswitched data operation is straight-forward.The controller 120 takes all of the data for the dedicated channel 114from the unswitched data equipment 106. No robbed-bit signaling bits aresent in dedicated channels 114.

In non-dedicated channels 114, robbed-bit signals will be sent on thechannel 114. This is true even if a channel 114 is currently idle and istemporarily being utilized to transmit unswitched data. Thedetermination of data source for data transmission on non-dedicatedchannels 114 is determined by the status for that channel 114 stored instatus memory 132. When the non-dedicated channel 114 is idle, data fortransmission is accepted from the unswitched data equipment 106. Whenthe status of the non-dedicated channel 114 is active, data is takenfrom the switched data equipment 102.

In addition to data, each ESF of data for a non-dedicated channelcontains four robbed-bit signaling bits. Three of these robbed-bitsignaling bits are transmitted as normal, these being robbed-bits A, B,and redundant robbed-bit D. The values for these bits are eitherpresented by switched data equipment 102 or are created by controller120 based upon the status information received by monitor 134. Eitherway, the creation of these robbed-bit signaling bits is well-known inthe prior art. In place of redundant robbed-bit C, the controller 120inserts the value of the transmit status for the channel 114 as storedin channel status memory 132. Since the transmit status for each channel114 can be only one of two values, the length of the transmit status isonly a single bit.

These non-data bits A, B, C, and D are present even if the status of thenon-dedicated channel 114 is idle. These bits represent the status ofthe channel 114 taken from the switched data equipment 102, even thoughthe remainder of the channel 114 contains data from the unswitched dataequipment 106.

When receiving data, the controller 120 receives data from the receiver124 according to the configuration and status for each channel 114. If achannel 114 is configured for dedicated operation, all of the datareceived on the channel 114 is directed to the unswitched data equipment106 by the controller 120. Otherwise, if the channel status is idle (andthe switched channel is therefore receiving unswitched data), thecontroller 120 presents the non-signaling bits (all bits other thanrobbed-bit signaling bits A, B, C, and D) to the unswitched dataequipment 106. If the channel 114 is in switched (non-dedicated)configuration and has an active status, the controller 120 receives datafrom receiver 124 and reinstates the C signaling bit by setting the Cbit equal to the A signaling bit. The received data is then presented tothe switched data equipment 102.

During receipt of an extended superframe, the detector 136 waits for theappearance of a channel status bit (the C robbed-bit signaling bit) onthe incoming data. Upon receipt of this bit, the detector 136 providesthe bit to the controller 120, which uses the bit to reassign thereceive status for the current channel 114 in the channel status memory132. Note that the received channel status bit updates the receivestatus in the channel status memory 132 even if there is no change inthe status. Alternatively, the controller 120 could compare the incomingchannel status bit with the receive status in the channel status memory132, and update the channel status memory 132 only on an actual changein receive status.

The status bit received by the detector 136 indicates the receive statusfor the current channel 114 in the next ESF, and does not change how thecontroller 120 handles the ESF currently being received. On receipt ofeach ESF from remote unit 110, controller 120 will handle the ESF datafor switched channels 114 according to the receive status for thechannels 114 as received in the prior ESF.

The procedures for transmitting and receiving data are set forth in moredetail in the flow charts shown in FIGS. 7 through 10. FIG. 7 shows thegeneral bit handler routine 140. The routine 140 is executed to handle atransmit bit and a receive bit. Under the bit handler routine 140, thebeginning of each transmitted frame is in sync with the beginning ofeach received frame. Although it would be possible to handle transmitand receive frames without it, such synchronization is standard in theindustry. Temporary storage for transmit and receive characters can beprovided in connection with transmitter 122 and receiver 124 in the formof character buffers (not shown), as is well-known in the prior art.

The entire bit handler routine 140 is repeatedly executed by controller120. Between each iteration, routine 140 prepares itself to handle thenext transmit and receive bits. The controller 120 is capable ofcounting the bits transmitted and received, and hence the bit handlerroutine 140 is able to determine when new channels, frames, andmultiframes begin.

The beginning of the bit handler routine 140 is shown as at flowchartposition 141. The first actual step 142 in routine 140 is to determinewhether the current bit is the first bit in a new frame. If so, thechannel index, indicated by the variable name Ci in the Figures, isreset to zero, as shown in step 144. After this, the bit handler routine140 handles the transmission and reception of the frame bit (Fbit) insteps 146 and 148, respectively. Frame bit determination and handling iswell-known in the prior art, and is not discussed further herein. Afterhandling the frame bit, the bit handler routine stops, as shown byflowchart location 150.

If step 142 indicates that a new frame is not beginning, step 152 isexecuted to determine if a new channel has begun. If so, step 154 servesto increment the channel index Ci. Whether or not the channel index isincremented, the receive process 160 and the transmit process 200 arethen executed for the current bit. After receiving and transmitting abit through processes 160, 200, the bit handler routine stops atlocation 150.

The receive process 160 is shown in FIG. 8, and begins at 162. Thecontroller 120 receives the next bit from receiver 124 and assigns thebit value to RBIT, in step 164. The receive process 160 next determinesif the current channel Ci is dedicated to unswitched data by checkingconfiguration memory 130, as shown by query 166. If the value of theConfig variable for channel Ci is equal to `1`, then the channel isconfigured for unswitched data. If set to `0`, the channel carriessignaling and may carry either switched or unswitched data. IfConfig[Ci] is equal to `1`, RBIT may be passed directly to theunswitched data unit 106 in step 168, and the receive process 160 canterminate at flowchart location 170.

If channel Ci is configured for switched data, the receive processcontinues by determining if the RBIT forms the beginning of a newreceive multiframe, in step 172. If it does, it is necessary to updatethe receive status variable to the updated status created during theprevious multiframe. This is done by setting the receive status variableRstatus to the value of new receive status variable NewRstatus in step174.

Whether or not Rstatus is updated, the receive process 160 must thendetermine whether RBIT is one of the four robbed-bit signaling bits instep 176. This determination is made by the controller 120 usingstandard prior art techniques. If RBIT is not a signaling bit, Rstatusfor current channel is checked to determine whether the channel iscurrently active (carrying actual switched data) or is inactive (formingpart of the unswitched data path), as shown in step 180. If the Rstatusfor the channel is `1`, the channel is inactive and RBIT is passed tounswitched data equipment 106 in step 182. If the Rstatus for thechannel is `0`, the channel is active and RBIT is passed directly toswitched data equipment 102 in step 184. In FIG. 8, the step executedafter passing RBIT to unswitched data equipment 106 (step 182) is alsostep 184. Although it would appear illogical to pass the same bit toboth sources, the switched data equipment 102 will simply ignore alldata bits it receives on channel Ci when that channel is inactive. Inthe preferred embodiment, all data bits received on a channel configuredfor switched data handling are automatically made available to switcheddata equipment 102. Hence, extra effort would be required to hide suchdata bits, and the extra effort is not needed. It would of course makeno difference to the receive process 160 if the step executed after step182 were the termination of the process in step 170.

If step 176 determines RBIT to be a signaling bit, receive process 160must determine if this is either the A or C bit, as seen in steps 186and 188 respectively. If it is neither, the signaling bit is passeddirectly on to the switched data equipment 102 in step 184 and thereceive process ends at step 170. If step 186 determines that RBIT isthe A signaling bit, it is necessary to temporarily save the value ofthis bit, as shown in step 190. This temporary value will be used toreset the C signaling bit to its original value (the redundant value ofthe A bit) before it is passed on to switched data equipment 102. Afterthe value of the A bit is saved in step 190, RBIT is passed to switcheddata equipment 102 in step 184 and the process ends.

If step 188 determines that RBIT contains the C signaling bit, thenreceive process 160 knows that RBIT contains the channel status signalfor channel Ci. As a result, NewRstatus for channel Ci is set to equalRBIT in step 192. RBIT is then set to the temporarily stored value ofthe A signaling bit in step 194, and then passed on to switched dataequipment 102 in step 184.

In this preferred implementation of receive process 160, the functionsof detector 136 (detecting the channel status bit) have been combinedwith the receive bit handling aspects of controller 120. In essence, thecontroller 120 has incorporated all aspects of the detector 136.

As can be seen from receive process 160 in FIG. 8, signaling bitsreceived on a switched data channel are never forwarded to unswitcheddata equipment 106, even if the channel is inactive and currentlycarrying unswitched data. In effect, the signaling bits are filtered outof the data stream heading for unswitched data equipment 106.

FIG. 9 shows the transmit process 200 in flowchart form. Transmitprocess 200 is shown starting at flowchart location 202. The firstfunctional step in transmit process 200 begins at 204, where thetransmit process 200 determines if the current bit to be transmittedwill be the beginning of a new multiframe. If so, it is necessary toupdate the transmit status variable to the updated status created duringthe previous multiframe. This is done by setting the transmit statusvariable Tstatus to the value of new transmit status variable NewTstatusin step 206.

Unlike the receive process 160, the transmit process 200 cannot updateits new status variable NewTstatus merely by examining channel statusbits created by the remote unit 110. Instead, transmit process 200 mustset NewTstatus by receiving status information from the local switcheddata equipment 102, which is accomplished in process 240 and isexplained in more detail in connection with FIG. 10.

After NewTstatus is updated, or if step 204 determines that the currentbit is not the start of a new multiframe, step 208 is executed todetermine if channel Ci is configured as dedicated to the handling ofunswitched data. If it is, Config[Ci] will equal `1`, and step 210 willset TBIT equal to the next bit available from the data unit. TBIT istransmitted across channel 114 in step 212, and the transmit process 200terminates as indicated by flowchart location 214 in FIG. 9.

If Config[Ci] is `0`, channel Ci is configured to carry switched dataand step 216 is executed to determine if the next bit is one of the fourrobbed-bit signaling bits. If yes, a determination is made whether thesignaling bit is the C bit. If step 218 determines it is the C bit, step220 sets TBIT to the current transmit status for channel Ci(Tstatus[Ci]).

In some circumstances, switched data equipment 102 itself generatessignaling bit C and is ready to present this bit to controller 120. Inthese circumstances, transmit process 200 will receive and ignore thenext bit presented by switched data equipment 102 for channel Ci in step222. TBIT is then transmitted in step 212, and transmit process 200terminates at location 214.

If step 218 determines that the status bit being sent is not the C bit,then TBIT is set to equal the appropriate robbed-bit signaling bit (A,B, or D). This is accomplished either by receiving the robbed-bitsignaling bit as the next available bit from the switched data equipment102, or by determining the robbed-bit signaling bit from statusinformation about the channel 114 given to controller 120 from theswitched data equipment 102. The procedure that is utilized depends uponthe switched data equipment 102 utilized. A PBX system will generate itsown robbed-bit signaling bit, while an ordinary telephone on a POTS linewould require the controller 120 to generate the signaling bits.Obtaining the robbed-bit signaling bits occurs in step 224.

Note that this step will handle the transmission of status bits even ifthe status for channel Ci is inactive and channel Ci is sendingunswitched data (Tstatus[Ci] =1). Either way, the actual status of thechannel maintained by the switched data equipment 102 will be sent toremote unit 110.

If step 216 determines that the current bit is not a signal bit, thestatus of the channel 114 is checked in step 226. If Tstatus[Ci] is `1`,then the channel 114 is inactive and the next bit of data should betaken from unswitched data equipment 106. In this case, transmit process200 first receives and ignores the next bit made available from switcheddata equipment 102, as shown in flowchart element 228. After that, thenext bit from unswitched data equipment 106 is transmitted, as shown instep 210. If Tstatus[Ci] is `0`, then the channel 114 is active and thenext bit of data should be taken from switched data equipment 102, asshown at step 227. This bit is then transmitted in step 212, andtransmit process 200 terminates at step 214.

It should be noted at this point that some ESF 24-frame multiframes arecreated by simply combining two 12-frame multiframes. In thesecircumstances, the C and D robbed-bit signaling bit are not always setequal to the A and B bit. Rather, the C and D bit represent the signalfound in the second 12-frame multiframe. As a result, the process shownin FIG. 8 must be slightly altered. The C bit will still be used to sendthe channel status signal. However, in this circumstance it is necessaryto set the D bit to equal the B bit on transmission. To accomplish this,the transmit process 200 must save the B bit on transmission, andreplace the D bit with the saved value of the B bit. In this way, whenthe C bit is reset to equal the A bit on reception (shown in FIG. 8),the combined C and D bits will be equal to the A and B bits, andtherefore will be assured to contain a valid signal. If the D bit werenot set to the value of the B bit, the setting of the C bit to equal Aon reception might create a spurious A-D signal in the second 12-framemultiframe. Although the actual C-D signal originally sent in the second12-frame multiframe is lost in this process, the next multiframe wouldalmost certainly include this signal. Thus, the C-D signal is delayedonly one multiframe. This implementation of the transmit process 200 isgenerally preferred, since it is useful in connection with moremultiframing techniques. Although the original C-D signal is not anexact duplicate of the A-B signal in multiframes of this type, the C-Dbits are still referred to as redundant robbed-bit signaling bits inthis application.

FIG. 10 shows the update NewTstatus routine 240, starting at flowchartlocation 242. The first step 244 of NewTstatus routine 240 is to resetcounter i to one in step 244. If i is not yet greater than the number ofchannels 114 in carrier 112, as determined in step 246, the NewTstatusroutine 240 must determine whether channel number i is currently in useto transmit switched data. This determination, shown in FIG. 10 at step248, is the heart of the NewTstatus routine 240. However, the actualprocedure used to make this determination is highly dependent on theactual switched data equipment 102 connected to the device 100.

To accomplish the task at step 248, NewTstatus routine 240 will have toactively monitor the switched data equipment 102 or the switched datasignaling occurring across the channels 114. In most cases, NewTstatusroutine 240 will simply monitor signaling from switched data equipment102 to determine when the transmit status for a channel 114 has changed.In some cases, however, the determination of transmit status for achannel 114 is more complicated. For instance, it is common for a phonegoing off-hook to only produce a robbed-bit signaling change in onedirection. This is because the switched data equipment 102 in a centraloffice does not change the robbed-bit signaling sent to a customer inresponse to a phone being picked up at the customer's site.Nevertheless, the customer must receive a dial tone from the centraloffice, which is only possible if the transmit status at the centraloffice is active for that channel. In this case, the NewTstatus routine240 in the device 100 located at the central office will recognize thephone off-hook indication received from remote unit 110 across channel114, and will set the transmit status for the appropriate channel 114 toactive.

In addition, some circumstances require the bandwidth in one directionto perform on-hook transmission, such as when a telephone rings. On-hooktransmissions are commonly used to provide caller-ID information to thecalled party before answering. In this case, the NewTstatus routine 240would set the transmit status for that channel to active at thebeginning of the ring cycle, in order to make sure that caller-IDinformation is transmitted properly to remote unit 110. Even if the callis not answered, NewTstatus routine 240 would not return the transmitstatus to inactive until after a specified amount of time, given inframe or multi-frame intervals, after the end of the last ring. Thiswaiting time is required because often there is no signaling from theswitched data equipment 102 at a central office to indicate that a callhas been abandoned.

These types of special circumstances are highly dependent on theparticular type of switched data equipment 102 utilized. The NewTstatusroutine 240 should include this type of switched data equipment 102specific logic for each type of switched data equipment 102 supported.The determination of status for each type of equipment 102 is known inthe prior art for the equipment.

After the determination is made at step 248, the value of NewTstatus forthis channel is assigned. If channel i is in use, NewTstatus[i] is setto zero in step 250. If not, NewTstatus[i] is set to one in step 252.Either way, the value of count i is then incremented in step 254, andthe check in step 246 is re-executed. If step 246 determines that counti exceeds the number of channels, the NewTstatus routine 240 terminatesas shown at flowchart location 256.

The NewTstatus routine 240 contains much of the logic found in themonitor 134. By including the routine 240 within the programming orcircuitry of the controller 120, the monitor 134 is effectively absorbedby the controller 120.

Direct Monitoring Embodiment

Another method of utilizing the components of FIG. 6 is through the useof time delay calculations and direct monitoring of existing channelsignaling. In this method, a channel status bit does not need to beinserted in place of robbed-bit signaling bit C. Rather than explicitlyinforming a remote unit 110 of a change in status of a switched datachannel 114 in this manner, the remote unit 110 of this embodimentsenses the change by monitoring normal channel signaling communication.

One method of channel signaling is through the use of robbed bitsignaling. Thus, rather than reading a C bit that has been altered byremote unit 110, the detector 136 would sense a need to change thereceive status of a channel by monitoring the A and B bit. This isinherently more complex than utilizing the C robbed-bit signaling bit totransfer information, since the detector 136 would have to interpret thefour status states possible with the A and B bit, and determine whichstatus state indicates a needed change in the receive status stored inchannel status memory 132. Nevertheless, this embodiment has theadvantage of leaving all transmissions over carrier 112 unchanged.

On transmit, the function of the monitor 134 would again depend on theparticular switched data equipment 102 utilized. Although the C bitwould not be changed into a channel status bit, other aspects oftransmission would be the same as that described above in connectionwith the robbed-bit signaling embodiment.

The bandwidth allocation could be switched exactly on frame ormulti-frame boundaries, or at other times depending upon a specificrealization of this method. In most cases, bandwidth allocation wouldoccur on the multi-frame received after the detector 136 or monitor 134detected the status change by monitoring the channel signaling. However,as explained above, it is necessary in some circumstances to utilize achange in the receive status to automatically change the transmitstatus. The example described above involved a telephone being pickedup, and the central office system not expressly altering the status ofthe channel from the central office back to the customer premises. Inthese circumstances, when the detector 136 detects the off-hookindication, the device embodying the invention at the central officemust alter both the receive status of the channel (indicating thatswitched data will now be received on that channel from the customerpremises) and the transmit status (indicating that the central officewill transmit switched data--such as a dial tone--to the customerpremises). On the customer premises, the monitor 134 would recognize thephone off-hook indication, and automatically change the transmit channelfor the status. The receive status must also be changed, but it cannotchange until the invention at the central office has changed itstransmit status. There is in effect a time delay that must be computed,so that the switch in status at the customer premises and the centraloffice can occur on the same multi-frame. This problem is of courseavoided in the first embodiment using the robbed-bit signaling bits,since a change in the channel signal in the C signaling bit alwaysprecedes the multichannel with a changed status.

The time delay actually utilized depends in part on the length of thelocal loop and any inherent delays built into the system. Typically, theswitch in status can occur on the next multi-frame boundary, or thesecond multi-frame boundary. The actual delay implemented will depend onthe actual timing of the device constructed in the particular localloop, although a preset delay of sufficient duration would allow thedelay to be implementation independent.

The basic receive routine utilized by the invention in this embodimentwould be changed only slightly, as shown in the flow chart for thealternative receive bit routine 260 in FIG. 11. In this figure, thesteps of the alternative receive bit routine 260 that are identical tothe receive bit routine 160 shown in FIG. 8 are similarly numbered.Thus, the routine starts identically, until it is time to set the newvalue of Rstatus at the start of a new multiframe. The simple step ofsetting Rstatus to equal NewRstatus (step 174 on FIG. 8) is replace withtwo steps. First, in step 262 the current time index is updated. In step264, Rstatus is now set equal to the NewRstatus for the current value oftime index t. This allows the routine 260 to add the necessary timedelay before implementing a change in status.

As a result, it would be possible to change the status in one, two, orany number of multiframe boundaries in advance. The setting of futurevalues of the Rstatus variables takes place in steps 266, 268, and 270of routine 260, which take the place of steps 188, 192, and 194 ofroutine 160. Unlike the previous routine, where the value of the Crobbed-bit signaling bit determine the new status value, routine 260must calculate the new status value based upon the value of both the Aand B status bits. Thus the A status bit is still saved in step 190.However, step 188 (the check for the C bit) is replaced with step 266(the check for the B bit). When the B bit is received, step 268 cancalculate the new status for the channel, based upon standard, prior artrobbed-bit signaling standards. This calculated status is then used toset the value of Rstatus for a future multiframe, by setting NewRstatusfor a particular channel and time index equal to the calculated value.As shown in FIG. 11 at step 268, the time index is equal to `t+i`, wheret is the current time index and i is the number of multiframesempirically determined to be necessary to delay implementing the newstatus. For instance, if the change can take place at the nextmultiframe boundary, i would equal `1`. If the change should wait forthe second boundary, i would equal `2`.

As explained above, the change in the receive status (Rstatus) maysometimes automatically trigger a change in the transmit status(Tstatus). To reflect this, step 270 shows the future value of Tstatusfor the current channel (at time index t+i) being altered by thecalculated status based upon the A and B robbed-bit signaling bits.

The transmit routine 280 for the direct monitoring embodiment is shownin FIG. 12. Those steps in routine 280 that are identical to the stepsin transmit routine 200 (shown in FIG. 9) have identical numbering. Likethe receive routine 260 for this embodiment, the primary change in thetransmit routine 280 is the use of a time index to allowed the delay inimplementing a new status. Thus, step 206 in the previous routine 200has been replaced with steps 282 and 284. Step 282 increments the timeindex t, and step 284 sets Tstatus to equal the value of NewTstatus forthe current time index.

Routine 286, which updates the status values based upon the currentoperation of the switched communications equipment, is extremely similarto routine 240 from the previous routine 200. Like routine 240, routine286 sets the value of the new transmit status variable based upon theswitched data equipment 102. In addition, routine 286 may also need toset the value for the receive status variable Rstatus under conditionssuch as those described above. The conditions under which this would benecessary vary greatly depending upon the switched data equipment 102used. This additional functionality is shown in the label of routine 286in FIG. 12.

In the direct monitoring embodiment, the robbed-bit signaling bits aretransmitted unchanged. As a result, the steps used to replace the C bitin routine 200 (namely, steps 216, 218, 220, 222, and 224) are no longerneeded for the transmit routine 280. Hence, FIG. 280 includes a greatlysimplified transmit procedure. A determination is made whether thechannel is used to transmit unswitched data by examining theconfiguration for the channel in step 208 or the Tstatus for the channelin step 226. If so, the Tbit to be transmitted is taken from theunswitched data equipment 106 in step 210 and transmitted in step 212.It may be necessary to ignore an incoming bit on switched data equipment102 as shown in step 228.

If steps 208 and 226 show that switched data will be transmitted, step227 sets Tbit equal to the next bit on the unswitched data equipment102. If the signal bits are not automatically generated by the switcheddata equipment 102, the routine 280 would of course calculate thecorrect signal bit and insert it appropriately in the data stream, as isdescribed above. Step 212 then transmits this bit.

Dynamic Bandwidth Allocation Equipment

FIG. 13 shows an example implementation of the present invention. On thecustomer's premises 300, a device 302 of the present invention isconnected to a PBX system 304 and a computer network 306. The PBX systemis connected to multiple phones on the customer's premises. The PBXsystem 304 is the switched data equipment 102 of FIG. 6, while thecomputer network 306 is the unswitched data equipment 106.Alternatively, the PBX system 304 could be replaced by multiple phonesattached to device 302 through POTS lines.

The device 302 is connected through the local loop 308 to a remotedevice 310 at the telecommunications company's central office 312. Theremote device 310 also embodies the present invention, but is configuredto interact with the equipment at the central office 312. The remotedevice 310 is connected to the telecommunications switch 314, which inturn is linked into the public switched telephone network, representedby cloud 316. The switch 314 is the switched data equipment 102 forremote device 310. The remote device 310 is also connected to a unit ofunswitched data equipment 318, such as a router, bridge, or networkswitch. The unswitched data equipment 318 in turn is connected to thewider world of unswitched data, represented by cloud 320. Cloud 320could represent Frame Relay, ATM, or even the Internet.

In this sample configuration, the customer is able to operate voice anddata communications over a single local loop line 308. The dynamicbandwidth allocation possible with the present invention devices 302,310 allow maximum utilization of a single line, perhaps eliminating thenecessity of installing a second local loop 308 connection at thecustomer's premises 300.

While the preferred method for dynamically allocating bandwidth overlocal loop line 308 is through either the robbed-bit signalingembodiment or the direct monitoring embodiment, the invention as shownin FIG. 13 could be used advantageously with any dynamic bandwidthallocation scheme. For instance, although the overhead and complexityare needlessly high, the utilization of pad codes to indicate changes inbandwidth assignments, as shown in U.S. Pat. No. 5,467,344, issued toSolomon and assigned to Ascom Timeplex Trading AG, would still be in thescope of the present invention of having a single, variable bandwidthunswitched data path on the local loop.

The invention is not to be taken as limited to all of the detailsthereof as modifications and variations thereof may be made withoutdeparting from the spirit or scope of the invention. For example,various elements of the device 100 shown in FIG. 6 could be combinedinto a single element without deviating from the scope of the invention.Also, although the channel status memory 132 and the configurationmemory 130 are shown and described above as separate memory elements, itis within the scope of the present invention to implement these memoriesas hard-wired circuits, simple logic gates, FIFO buffers, or though astate machine. It would also be possible to make simple changes in thestructure or order of the steps of the described routines withoutsignificantly altering the fundamental nature of the present invention.In addition, although the present invention was described primarily inconnection with a T1 local loop, the use of other connection protocolssuch as E1, T3, HDSL, SDSL, or VDSL would not significantly alter thepresent invention.

What is claimed is:
 1. A telecommunications device for transmitting andreceiving switched data and unswitched data over a local loop connectedto a remote unit, the local loop having a plurality of time divisionmultiplexed channels with at least one switchable channel, thetelecommunications device being in communication with local switched andunswitched communications equipment, and the remote unit being incommunication with remote switched and unswitched communicationsequipment, the telecommunications device comprising:a) a channel statusmemory indicating a transmit status and a receive status for each of thechannels, the transmit status and the receive status both having a firstvalue indicating the channel is carrying the unswitched data and asecond value indicating the channel is carrying the switched data; b) atransmitter for transmitting the switched data and the unswitched datato the remote unit across the channels according to the transmit statusfor each channel, the transmitter embedding in the data transmitted overthe switchable channel a transmit channel status signal indicating thetransmit status for the switchable channel; c) a receiver for receivingswitched data and unswitched data from the remote unit across thechannels according to the receive status for each channel; d) a statusdetector in communication with the receiver for detecting in the datareceived on the switchable channel an embedded receive channel statussignal; e) a local connection monitor adapted for monitoring the localswitched communications equipment for changes in a connection status forthe switchable channel; f) a controller in communication with thechannel status memory, the detector and the monitor, the controlleri)updating the transmit status of the switchable channel when the monitordetects a change in the connection status for the switchable channel,and ii) updating the receive status of the switchable channel when thedetector detects a change in the switchable status for the specificchannel.
 2. The device of claim 1,wherein the controller is incommunication with the transmitter and the receiver; wherein thecontroller selects data for transmission from the local switched andunswitched communications equipment according to the transmit status forthe channels; and further wherein the controller presents data receivedfrom the receiver to the local switched and unswitched communicationsequipment according to the receive status for the channels.
 3. Thedevice of claim 1, wherein all channels carrying unswitched data arecombined into a single, logical data communications stream.
 4. Thedevice of claim 3, wherein at least one channel is dedicated totransmitting and receiving unswitched data.
 5. The device of claim4,further comprising configuration memory for identifying the channelsdedicated to transmitting and receiving unswitched data, wherein thecontroller will not update the transmit and receive status for channelsthat are identified as dedicated to unswitchable data.
 6. The device ofclaim 3,wherein at least one channel is dedicated to transmitting andreceiving unswitched data and does not contain any channel status signalembedded in the data; and wherein the device further comprisesconfiguration memory for identifying the channels dedicated totransmitting and receiving unswitched data.
 7. The device of claim3,wherein the switched data and unswitched data are transmitted andreceived utilizing a plurality of multiframes, with at least one channelin the multiframes containing at least one significant robbed-bitsignaling bit and at least one redundant robbed-bit signaling bit;wherein the transmitter alters at least one of the redundant robbed-bitsignaling bits to directly indicate the transmit status of the channelcontaining the altered robbed-bit signaling bit; and wherein thedetector monitors the data received for altered redundant robbed-bitsignaling bits altered by the remote unit.
 8. The device of claim 7,wherein the controller replaces the altered bits in a receivedmultiframe with a replacement bit equivalent to at least one of thesignificant robbed-bit signaling bits in the same received multiframe.9. The device of claim 7,wherein the transmitted altered bits are set toa first setting when the transmit status of the channel containing thealtered bits is the first value; and wherein the transmitted alteredbits are set to a second setting when the transmit status of the channelcontaining the altered bits is the second value.
 10. The device of claim9, wherein the first setting, second setting, first value, and secondvalue are each a single bit in length.
 11. The device of claim 7,wherein each multiframe contains twenty-four separate one hundredninety-three bit frames, and at least one channel in the multiframescontains two significant robbed-bit signaling bits and two redundantrobbed-bit signaling bits.
 12. The device of claim 11, wherein the firstredundant robbed-bit signaling bit in a particular multiframe isaltered, and the second redundant robbed-bit signaling bit in theparticular multiframe is unchanged.
 13. The device of claim 11, whereinthe first redundant robbed-bit signaling bit in a particular multiframeis altered, and the second redundant robbed-bit signaling bit in theparticular multiframe is set equal to the second significant robbed-bitsignaling bit.
 14. The device of claim 7,wherein five consecutive framesfor one channel in the multiframe do not contain robbed-bit signalingbits, and the frame immediately following the five consecutive framescontains a robbed-bit signaling bit in a least significant bit of theone channel, and wherein the unswitched data is transmitted on the onechannel using all bit positions in the five consecutive frames and inall but the least significant bit position in the frame following thefive consecutive frames.
 15. A method for communicating switched dataand unswitched data with a remote location across a plurality of timedivision multiplexed channels utilizing multiframes, where switched datacommunication status is communicated by robbed-bit signaling, the methodcomprising:a) assigning to each channel a transmit status and a receivestatus, each status indicating whether the channel will carry switcheddata or unswitched data; b) monitoring local switched datacommunications equipment for a local open channel event or a closechannel event relating to a particular channel; c) changing the transmitstatus of the particular channel to indicate switched data upon thelocal open channel event; d) changing the transmit status of theparticular channel to indicate unswitched data upon the local closechannel event; e) dividing the unswitched data received from a locallogical unswitched data path onto the separate channels that have anunswitched data transmit status; f) transmitting switched data andunswitched data across the channels to the remote location according thetransmit status of each channel, while incorporating robbed-bitsignaling bits into at least one robbed-bit signaling channel; g)receiving switched data and unswitched data from the remote locationacross the channels, while monitoring for robbed-bit signaling bits onthe robbed-bit signaling channels; h) updating the receive status forthe robbed-bit signaling channels based upon the robbed-bit signalingbits received on that channel; and i) combining data received overchannels that have a received status indicating unswitched data into asingle logical data path.
 16. The method of claim 15, furthercomprising:j) assigning the transmit status and the receive status toindicate unswitched data for all channels not containing robbed-bitsignaling bits.
 17. The method of claim 15, wherein step f) furthercomprises:i) receiving from the local switched data communicationsequipment robbed-bit signaling bits A, B, C, and D for a particularrobbed-bit signaling channel in a particular multiframe; ii)transmitting robbed-bit signaling bits A and B without change; and iii)replacing robbed-bit signaling bit C with a bit directly indicating thetransmit status for the particular robbed-bit signaling channel.
 18. Themethod of claim 17, wherein step f) further comprises:iv) replacingrobbed-bit signaling bit D with the value of robbed-bit signaling bit B.19. The method of claim 17, further comprising:j) setting robbed-bitsignaling bit C to equal robbed-bit signaling bit A for the datareceived from the remote location on the particular robbed-bit signalingchannel.
 20. A method for transmitting switched data and unswitched datafrom local switched and unswitched communications equipment to a remotelocation across a plurality of time division multiplexed channelsutilizing multiframes and redundant robbed-bit signaling, the methodcomprising:a) assigning to each channel a transmit status and a receivestatus, each status indicating whether the channel forms part of asingle logical unswitched data path or is utilized as a separateswitched data path; b) monitoring local switched communicationsequipment for a local channel event relating to a particular channel; c)changing the transmit status of the particular channel upon the channelevent; d) changing the receive status of the particular channel tocoincide with the transmit status for the particular channel after apreset time delay after monitoring a local channel event; e)transmitting switched data and unswitched data across the channels tothe remote location according to the transmit status of each channel;and f) receiving switched data and unswitched data from the remotelocation across the channels according to the receive status for thechannels.
 21. The method of claim 20 further comprising the steps of:g)separating outgoing unswitched data from the single logical data pathinto the channels that have an unswitched data transmit status; and h)combining data received over channels that have an unswitched datareceive status into the single logical data path.
 22. The method ofclaim 20, further comprising the steps of:g) monitoring data received onthe particular channel for the occurrence of a remote channel event; h)updating the receive status for the particular channel on the occurrenceof the remote channel event; and i) updating the transmit status for theparticular channel to coincide with the receive status for theparticular channel after a preset time delay after monitoring a remotechannel event.
 23. The method of claim 20, wherein the switched data istransmitted incorporating robbed-bit signaling bits.
 24. The method ofclaim 23, further comprisingg) monitoring received data for theoccurrence of a remote channel event as indicated by the robbed-bitsignaling bits; and h) updating the receive status for a channel on theoccurrence of the remote channel event.
 25. A system for communicatingswitched data and unswitched data over a local loop, the systemcomprising:a) a local switched data equipment device for providing andreceiving switched data over at least one switched data path; b) a localunswitched data equipment device for providing and receiving unswitcheddata over one unswitched data path; c) a remote switched data equipmentdevice in communication with the local switched data equipment deviceover the at least one switched data paths, wherein the switched dataequipment devices communicate data path status information to each otherby embedding robbed-bit signaling bits into the data path; d) a remoteunswitched data equipment device in communication with the localunswitched data equipment over the unswitched data path; e) ahigh-bandwidth local loop carrier divided into time division multiplexedchannels; f) a local communications device in communication with thelocal switched data equipment device, the local unswitched dataequipment device, and the carrier; and g) a remote communications devicein communication with the remote switched data equipment device, theremote unswitched data equipment device, and the carrier; h) the localand remote communications devices each havingi) a determination meansfor determining, by examining the robbed-bit signaling bits, whether theswitched data paths are actually carrying switched data; ii) a switcheddata assignment means for assigning one channels to each switched datapaths actually carrying switched data; and iii) an unswitched dataassignment means for assigning all channels not actually carryingswitched data to the unswitched data path.
 26. The system of claim 25,wherein the communications devices communicate channel assignmentinformation by replacing a redundant robbed-bit signaling bit with achannel assignment status bit.